package offer;
import java.util.*;
/**
 * Creared with IntelliJ IDEA.
 * Description:现在有2副扑克牌，从扑克牌中随机五张扑克牌，我们需要来判断一下是不是顺子。
 * 有如下规则：
 * 1. A为1，J为11，Q为12，K为13，A不能视为14
 * 2. 大、小王为 0，0可以看作任意牌
 * 3. 如果给出的五张牌能组成顺子（即这五张牌是连续的）就输出true，否则就输出false。
 * 4.数据保证每组5个数字，每组最多含有4个零，数组的数取值为 [0, 13]
 * User:yxd
 * Date:2022-07-22
 * Time:20:12
 */
public class JZ61 {
    public boolean IsContinuous(int [] numbers) {
        Set<Integer> set = new HashSet<>();
        int max = Integer.MIN_VALUE;
        int min = Integer.MAX_VALUE;
        for(int i = 0;i < numbers.length;i++){
            if(numbers[i] == 0)continue;
            if(set.contains(numbers[i])){
                return false;
            }else{
                set.add(numbers[i]);
            }
            //记录最大值和最小值
            max = Math.max(max,numbers[i]);
            min = Math.min(min,numbers[i]);

        }
        //看最大值和最小值之间差是多少，小于5表示
        return max - min < 5;
    }
}
